1. Field of the Invention
The present invention relates to the field of bus systems. More particularly, the invention relates to controlling issuing of transaction requests to a bus system.
2. Description of the Prior Art
A bus system may be used to connect together master devices and slave devices. A master device can request a service from a slave device by issuing a transaction request to the bus system. The bus system then delivers the transaction request to the slave device, and the slave device performs the requested service and sends a response to the master device via the bus system.
When there are multiple master devices competing for use of the bus system or competing for use of the same slave device, an allocation mechanism may be needed to determine when each master device gains use of the bus system or slave device. For example, a round robin mechanism can be used to allocate fixed slots to each of the master devices so that each master device may in turn access the bus system or the slave device. In this way, each master device has an equal chance of accessing the bus system or the slave device.
However, it may be desirable for one master device to gain access to the bus system more frequently than another master device. For example, one master device may generate transaction requests at a higher rate than the other master device and so may require use of the bus system or a slave device more often. It is possible to use a weighted round robin scheme where one master device receives more time slots than another master device and so is able to access the bus system and the slave devices more frequently. However, such a scheme may not provide the desired distribution of bus/slave bandwidth among the master devices. Also, when the bus system is a hierarchical bus system having at least two levels of bus interconnects, each interconnect being connected to one or more master or slave devices, then the weighted round robin scheme is more difficult to manage because the particular way in which the interconnects couple the master and slave devices together may make it difficult to achieve certain allocations of bus/slave bandwidth. The present technique seeks to provide an improved technique for allocating bandwidth on the bus system.